export interface User {
  id: number
  username: string
  password: string
  nickname: string
  email: string
  phone: string
  avatarUrl?: string
  realName?: string
  gender: number
  birthday?: string
  status: number
  lastLoginAt?: string
  createdAt: string
  updatedAt: string
  permissions?: string[]
}

export interface LoginRequest {
  username: string
  password: string
}

export interface RegisterRequest {
  username: string
  email: string
  password: string
  nickname: string
  phone: string
}

export interface UpdateProfileRequest {
  nickname?: string
  email?: string
  phone?: string
  avatarUrl?: string
  realName?: string
  gender?: number
  birthday?: string
}

export interface ChangePasswordRequest {
  oldPassword: string
  newPassword: string
}

export interface ForgotPasswordRequest {
  email: string
}
